Gerhard Schellhorn and Wolfgang Ahrendt the Wam Case Study: Verifying Compiler Correctness for Prolog with Kiv

نویسنده

  • WOLFGANG AHRENDT
چکیده

This chapter describes the first half of the formal, machine-supported verification of a Prolog compiler with the KIV system. Our work is based on the mathematical analysis given in (Börger and Rosenzweig, 1995), where an operational semantics (an “interpreter”) for Prolog is defined as an Abstract State Machine (ASM). This interpreter is then transformed in 12 systematic refinements to an ASM which executes machine code of the Warren Abstract Machine (WAM). The goal of our case study was to formalize ASMs and the proof techniques given in (Börger and Rosenzweig, 1995), and to give machine-checked correctness proofs for the correctness of the refinements. So far we have verified the first 6 refinements, and we will give a detailed account on the problems we found in verification. Our motivations for beginning such a large case study — based on our current experience we estimate the necessary effort to develop a verified compiler to be around a person year — are the following Mathematical analysis is an indispensable prerequisite for formal verification to be applicable. Nevertheless mathematical analysis will always omit details and have minor errors. These errors are due to the large complexity of correctness proofs, which is easily underestimated at first glance. The errors usually do not invalidate the analysis, but would still result in erroneous compilers. We want to demonstrate that the absence of errors can be guaranteed by formal correctness proofs, making them a suitable counterpart to mathematical analysis. We want to show that Dynamic Logic (DL) as it is used in the KIV system can serve as a suitable starting point for the verification of Abstract State Machine refinements. In particular, the proof technique of commuting diagrams of Proof Maps, used informally in (Börger and Rosenzweig, 1995), can be formalized in DL.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Veriication of a Prolog Compiler { First Steps with Kiv

This paper describes the rst steps of the formal veriication of a Prolog compiler with the KIV system. We build upon the mathematical deenitions given by BB orger and Rosenzweig in BR95]. There an operational semantics of Prolog is deened using the formalism of Evolving Algebras, and then transformed in several systematic steps to the Warren Abstract Machine (WAM). To verify these transformatio...

متن کامل

Veri cation of a Prolog Compiler { First Steps with KIV

This paper describes the rst steps of the formal veriication of a Prolog compiler with the KIV system. We build upon the mathematical deenitions given by BB orger and Rosenzweig in BR95]. There an operational semantics of Prolog is deened using the formalism of Evolving Algebras, and then transformed in several systematic steps to the Warren Abstract Machine (WAM). To verify these transformatio...

متن کامل

Reasoning about Abstract State Machines: The WAM Case Study

This paper describes the rst half of the formal veri cation of a Prolog compiler with the KIV (\Karlsruhe Interactive Veri er") system. Our work is based on [BR95], where an operational Prolog semantics is de ned using the formalism of Gurevich Abstract State Machines, and then re ned in several steps to the Warren Abstract Machine (WAM). We de ne a general translation of sequential Abstract St...

متن کامل

Interactive Correctness Proofs for Software Modules Using KIV

This paper presents the KIV (Karlsruhe Interactive Veriier) proof environment for interactive, machine-supported veriication of software modules with algebraic interface speciications. The aim is to make industrial-strength veriication of software possible, and KIV is currently involved in industrial projects. We present the proof method, tactics, automated support , and the KIV proof engineeri...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1998